# -*- coding: utf-8 -*- 
# @project : 《Atcoder》
# @Author : created by bensonrachel on 2021/8/5
# @File : (step5)B. Multiplication Table(CF).py
# https://codeforces.com/edu/course/2/lesson/6/5/practice/contest/285084/problem/B

def check(n,mid):
    cnt = 0
    for i in range(1,n+1):
        cnt += min(n,(mid-1)//i)#mid-1//i就是列坐标了,说明有多少个小于mid，不包括mid
    return cnt
def bi(n,k):
    l = 0
    r = n*n+1
    while(l+1<r):
        mid = (l+r)//2
        if(check(n,mid)<=k-1):
            l = mid
        else:
            r = mid
    return l
if __name__ == "__main__":
    n,k = map(int ,input().split())
    print(bi(n,k))
"""
左二分：
遍历矩阵的每一行，看看小于当前值的个数和是多少，但是不包括自己
k-th为从1开始，所以前面有k-1个。
"""